查看原文
其他

瞰见|字节的火山引擎年初上演开源违规大戏,企业该何去何从?

The following article is from OpenTEKr 开源星系 Author 狄安




| 转载自:OpenTEKr 开源星系
| 作者:狄安
| 编辑:钱英宇
| 设计:朱亿钦


有预见能力的参与者在掌握了合作的真谛后,可以加快合作的进化。
                                ——《合作的进化》/罗伯特·阿克赛尔罗德


Feb. 8, 2022

3,549 字 | 大约需要 6 min



距壬寅虎年春节前几天,开源圈又冒出了一个大瓜:字节跳动子公司火山引擎在其发布的一个产品中使用 Apache 基金会下的开源软件 Apache SkyWalking时,没有遵循其 Apache 2.0 的开源许可规定,导致直接违规。 

1

 吃瓜事情始末

在如今开源许可协议种类繁多、规则复杂的情况下,Apache基金会是一个对开源使用方相当友善的开源组织,而 Apache 2.0 开源协议也是所有开源许可中被认为是非常宽松的软件许可。一般在使用此类开源软件时,使用方做好相应的声明就可以自由使用了。但这次 Apache Skywalking 官方则指出火山引擎在使用 Apache Skywalking 项目时不仅在他们的分发中没有保留Apache软件基金会的许可和通知文件,还直接改变了所有使用到的软件包名称,并删除了Apache 基金会的 Header。

此事件一经被社区曝光,火山引擎项目团队似乎也意识到了事件的严重性,随即在1月30日向 Skywalking 官方承认了自己的违规行为,并马上在自己的产品中做出了修正更新:承认自己产品的分发是 Skywalking 的一个分叉版,同时补充加入了Apache 2.0 的许可证和通知,并恢复了相应的 Skywalking 许可证标头。
实锤证据
鲁迅先生曾经说过一句令人警醒的话,他向来不惮以最坏的恶意去推测国人。然而,我还是不忍以任何恶意去揣测字节和火山引擎的行为,只遗憾连如此顶流的科技巨头,在开源治理方面竟如此缺失。可见,开源的教育普及之路漫漫,开源合规治理在企业的引入尤是雄关漫道真如铁

目前事件虽由此告一段落,但对企业如何恰当参与开源及开源合规使用却只是开始。

2

开源的解读

确实,开源作为软件知识的自由共享方式,开源许可证作为开源软件能确保按其开源创作者的共享意愿下来进行自由分享的协议规则,它的本意不是去挑起法律争端。这恰如 Apache 基金会的董事吴晟在其朋友圈表示,
“果然很多人理解错了 SkyWalking进行 License 维权的原因。我们不是慈善,但是 for public good,希望联合更多的人构建世界顶尖的软件。 
今天的时代,很多为了marketing为了营收做开源,但这不是Apache基金会和顶级项目的目标。”

吴晟话语表达了Apache基金会作为开源组织的观点:开源虽然是for Public Good,但却也不会是无任何底线的慈善。也正如我们 OpenTEKr 社区所一贯主张的 “自由与规则同在,免费与商业共生”的理念,这应该是开源的一个基本原则与共识。联想到去年另外一个科技巨头在开源项目运营时因为对开源文化的误读误用而发生了一个不大不小的笑话。公司开源项目组为提高其开源项目的关注度,而简单粗暴的用传统互联网营销中点赞送礼的方式来试图圈粉,完全忽视开源中的程序员声誉文化的内涵。而随着开源在国内的进一步深入,如果没有正确的开源认知,无论科技大厂,还是一般企业,我相信这样的问题将绝不会是个别案例。 
就如,刚刚过去的中国足球在大年初一以1:3惨败给越南这样令人羞耻的失败。虽然给球迷们添堵,但当我们回过头去看中国足球的基础教育情况,就拿我们近14亿人中足球注册人口区区不到2万人的数量,和那些足球强国虽然绝对人口只有数千万却动不动就是百万人的足球注册人口相比过后,也就没什么可以埋怨的理由了。谁让我们如此无视足球的基础教育呢!开源如是,我们与其去批评和谴责这些企业所犯下的初级错误,不如去思考哪些方法能

  • 帮助企业建立正确的开源认知?

  • 帮助企业有效地开展开源治理?



Linux 基金会在2018年时出过一份《企业开源实践指导》的手册。其当时就指出开源的渗透率在全球范围内已经从本世纪初的20%,到2018年时的85%或更高的程度。事实上,无论身处哪个行业,或者开发什么样的产品或软件,你已经都可能高度依赖着各类开源软件。那么为更好地使用开源,对于企业开源实践是个无论是企业的管理者、研发部门负责人,或者是软件工程师,必须对开源做必要的了解和掌握。
企业使用开源的好处已经毋庸讳言,那何为企业用开源的正确姿势呢?这本手册里综合了近20年以来国际上各大企业的开源实践,给出了很多极具参考价值的建议和操作指南。其中,最重要的一步就是企业在使用开源的过程中,建立与自己企业的发展相对应的开源策略,该手册便定义了四项策略:开源的消费者策略,开源的参与者策略,开源的贡献者策略,开源的领导者策略

3

  企业介入开源的四大策略

以下内容编译和节选自该手册的部分章节,在此和各位读者分享并解读。


1.开源的消费者策略

大多数的企业一般是首先作为开源软件的使用方,即开源消费者,来和开源发生关系的。而企业作为开源消费者介入开源时,往往一开始是由企业内部的软件工程师驱动的,从在企业内部的软件系统设施或者其商业产品中使用不同的开源技术,以提高自己的研发效率减少时间、降低研发成本,并提高产品差异化的能力。
那么,为了让自己在作为开源消费者时不发生错误,以下几点可以作为企业开源消费策略的必要组成部分:
  • 建立一套开源使用的指导方案,以指导在业务中使用哪些类别开源软件;


  • 建立一套开源合规体系,来确保公司履行使用开源软件存在的所有义务;


  • 建立一个开源审查委员会(Open Source Review Board, OSRB)作为公司开源活动的管理中心。如果条件不够,也至少在公司内部成立一个开源审查小组;


  • 建立一个开源软件的使用流程,以用于评估和批准开源使用情况。必要的话,可以部署一些自动化工作流程软件来管理;


  • 建立一个和开源使用相关的年度预算制度,确保在工程、产品管理和法律方面的员工数量和基础设施方面定期进行一定的增量投资,以管理闭源和开源软件间的复杂组合。



2. 开源的参与者策略

由内部工程师驱动的企业开源消费,也经常会由工程师进一步驱动升级到企业以不同的形式和不同的程度参与到开源社区活动中去,这是一种自下而上的企业自发地开源参与方式。一旦获得了在开源消费上的成功,有些企业同时会自然而然地产生与开源社区更紧密地接触需要。如期望提高自己企业的知名度来从社区中招募了经验丰富的开发人员,成为一个开源的参与者,以下则是开源参与策略的必要组成部分:
  • 实时跟踪社区沟通平台,如聊天服务器,邮件列表,论坛和网站,以随时了解项目发展情况 ;

  • 经常参加相关会议和聚会,与社区建立关系;

  • 赞助一些项目活动和基金会,以提高企业在社区内的知名度;

  • 教育开发人员如何参与和参与开源项目。



3. 开源的贡献者策略

当企业意识到「以基层工程师驱动的开源介入」转化到「以业务驱动的开源介入」时,也就意味着企业在意识上准备好了从原先开源参与的基础上进行构建开源,并开始为开源项目贡献代码。那对企业而言,这就需要有选择地与目标开源项目及相应的开源社区进行合作,以推动和实现公司对于开源的需求,并为战略性开源项目做出特定的贡献以获得额外的价值,因为代码贡献可以帮助塑造项目中满足公司需要的软件功能。以下几点就是这个策略阶段的考虑要点
  • 任命一名项目负责人来领导开源策略及管理企业的开源小组;

  • 招募开源项目的贡献者和提交者加入到对企业产品产生重要影响的开源社区;

  • 部署开源协作工具以支持和管理开源使用和贡献;

  • 有计划地增加一些开源开发人员资源;

  • 在工程、产品管理和法律方面进行必要地增量投资,以参与现有的外部开源社区。

 

4. 开源的领导者策略

在四大开源策略的最后一项就是成为领导者策略。此策略应当建立在此前所有的策略基础之上,而此时的企业也当是希望「利用新兴的技术趋势来建立自己领导地位的业务战略」。在现有的开源社区中,领导角色是「通过与项目成员建立信任并保持对项目的高度持续贡献而获得」的。这种情况需要对目标开源社区和联盟进行大量投资,以建立领导地位。它还需要在工程、产品管理和法律方面增加投入,以在外部社区和行业联盟中建立领导地位。以下是开源领导战略的必要组成部分:
  • 增加与目标开源社区的互动;

  • 有选择地采用一些开放标准来驱动公司的产品;

  • 开展与开源基金会的合作;

  • 建立开源项目、开源组织或基金会;

  • 在工程、产品管理和法律方面进行增量投资,以与现有的外部社区互动。


企业参与开源的动态演进策略

在以上谈到的企业作为开源消费者,参与者,贡献者和领导者的四大策略中,实际上每个策略也不是孤立的,而是一系列连贯的阶梯型策略,每个策略的部署会要求企业在前面的策略中取得成功,而一个企业在这个阶梯上能走多远也完全取决于企业自己的目标和决策。但当从一个位置过渡到另一个位置时,它们通常会重叠。如下图所示:           (图片来自《企业开源实践指导手册》)

如前所述,在开源的早期阶段(企业作为消费和参与者)主要是由工程驱动的,因为当工程师基于技术优势开始使用各种开源组件来加速开发并且参与选定的项目时,要么加入社区对话,要么做出小贡献。而随着时间的推移,这种使用在公司的高层中变得众所周知,当它获得牵引力时,这种参与就会导致企业在确定战略下成为业务驱动的开源策略。一些公司只是作为消费方并保持在此阶段,但有些公司则有不同的抱负,并希望在排名中推得更高,以获得一定的领导地位。所以,每个企业完全可以根据自己的实际情况来决定自己在开源社区里扮演的角色,但最重要的是:企业需要清醒地确定自己在开源这个梯型策略里所处的当前位置、期望建立的目标位置,并且规划好从当前位置移动到目标位置时的蓝图路径
最后,始终不能忽略的一个关键是,企业在确定任何开源策略时,有几个问题就不得不诚实地回答出来,并且应该越早回答越好。这三个问题是:

1. 企业想用开源来帮助解决什么样的问题?

2. 企业到底想参与或建设一个什么样的开源项目或社区?

3. 企业的内部文化和开源治理水平到底能否让自己成为开源的赋能者?




注:封面图和文中引用图片均来源于网络,侵删。本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。



/// 关于作者 ///


狄 安

OpenTEKr 创始人 & 开源布道者

企业级软件领域的连续创业者,开源领域的独立研究者。现从事开源和数字化领域的文化研究和理念布道,及开源和商业结合的探索与实践。



/// 关于 OpenTEKr ///


OpenTEKr 是一家以推广开源软件开放硬件技术为核心的开放式非营利组织,致力于构建一个可持续发展的开放科技生态圈。基于“众有、众享、众治”的信念,我们依循「自由与规则同在,免费与商业共生」的原则,憧憬科技普惠的美好未来,帮助个人和组织通过变革性技术创新来成就非凡自我


相关阅读 | Related Reading


听过来人一句劝,合规真的很重要


开源基金会必须合作以防止下一次Log4Shell混乱


试论开源生态的经济模型


开源社简介

开源社成立于 2014 年,是由志愿贡献于开源事业的个人成员,依 “贡献、共识、共治” 原则所组成,始终维持厂商中立、公益、非营利的特点,是最早以 “开源治理、国际接轨、社区发展、开源项目” 为使命的开源社区联合体。开源社积极与支持开源的社区、企业以及政府相关单位紧密合作,以 “立足中国、贡献全球” 为愿景,旨在共创健康可持续发展的开源生态,推动中国开源社区成为全球开源体系的积极参与及贡献者。


2017 年,开源社转型为完全由个人成员组成,参照 ASF 等国际顶级开源基金会的治理模式运作。近七年来,链接了数万名开源人,集聚了上千名社区成员及志愿者、海内外数百位讲师,合作了近百家赞助、媒体、社区伙伴。



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存